package cn.cvs.dao.sysUser;

import cn.cvs.pojo.Storage;
import cn.cvs.pojo.Supplier;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

public interface SupplierMapper {
    /**
     *统计供应商数量的方法
     */
    public int countSupplier();

    /**
     * 查询供应商列表
     */
    public List<Supplier> getSupplierList();

    /**
     * 使用if标签改造入库记录模块的列表查询功能--实战任务1
     * @param supplierId  供货商ID
     * @param payStatus 支付状态
     * @param goodsName 商品名称
     * @return
     */
    public List<Storage> getIfList(@Param("supplierId") Integer supplierId,
                                   @Param("payStatus") Integer payStatus,
                                   @Param("goodsName") String goodsName);


    /**
     * 使用if+where标签改造供货商模块的列表查询功能--实战任务2
     * @param supCode
     * @param supName
     * @return
     */
    public List<Supplier> getWhereSupplierList(@Param("supCode") String supCode,@Param("supName") String supName);

    /**
     * 使用choose标签改造供货商模块的列表查询功能
     * @param supName
     * @param supCode
     * @param supContact
     * @param createdTime
     * @return
     */
    public List<Supplier> getChooseSupplierList(@Param("supName")String supName,
                                                @Param("supCode")String supCode,
                                                @Param("supContact")String supContact,
                                                @Param("createdTime")Date createdTime);

    /**
     * 第二章上机1：实现查询入库记录表的功能
     */
    public List<Storage> lisStorage(Storage storage);

    /**
     * 使用if和set标签改造供货商模块的修改功能 上机6
     * @param supplier
     * @return
     */
    public int update(Supplier supplier);
}
